package com.ifdom.enumration;

/**
 * enum 转换与获取
 **/
public class EnumEx {
    public static void main(String[] args) {

        // 1.使用自定义 valueOf() 创建一个无参默认枚举
        Sex defaultSex = Sex.valueOf();
        System.out.println(defaultSex);

        // 1.从 值转换为enum， 自定义 valueOf 静态方法
        Sex sex = Sex.valueOf(2);
        System.out.println(sex);

        // 从 值转换为enum， 自定义 getValue 静态方法
        int val = sex.getValue();
        System.out.println(val);

        switch (sex) {
            case Girl:
                System.out.println("gg");
                break;
            case Boy:
                System.out.println("bo");
                break;
            default:
                System.out.println("default");
                break;
        }
    }
}


/**
 * 性
 *
 * @author dell
 * @date 2022/06/28
 */
enum Sex {
    /**
     * 男孩
     */
    Boy(1),
    Girl(2);


    /**
     * 默认值
     */
    private Integer val = 1;

    Sex(Integer val) {
        this.val = val;
    }

    public static Sex valueOf() {
        return Boy;
    }


    public static Sex valueOf(int target) {
        Sex sex = null;
        switch (target) {
            case 1:
                sex = Boy;
                break;
            case 2:
                sex = Girl;
                break;
            default:
                break;
        }
        return sex;
    }

    public int getValue() {
        return this.val;
    }
}
